C ++ получить имя вектора, который был передан в функцию - PullRequest
0 голосов
/ 15 октября 2018

В C ++ есть ли способ получить имя вектора, который был передан в функцию внутри функции?

#include<bits/stdc++.h> 
using namespace std; 

void func(vector<int> &vect) 
{ 

std::cout << "The name of vector passed to func is " << vect.GETNAME();
} 

int main() 
{ 
    vector<int> vectorName; 

    func(vect); 

    return 0; 
} 

Я ожидаю увидеть "Имя вектора, переданного в func, это vectorName".

Я попытался погуглить ошибку и понимаю, что вы не можете получить имена объектов в c ++, но я могу изменить векторный класс, добавив метод getName()?

1 Ответ

0 голосов
/ 15 октября 2018

Нет, нет.По крайней мере, не для std::vector и обычных функций.За кулисами ссылка vect - это просто указатель на место в памяти.Ничто в стандарте C ++ не дает вам возможности получить имя чего-либо на сайте вызовов (оно может даже не существовать - как называется {1, 2}?).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...