Как связать путь к папке при компиляции C ++? [Дубликат]

Java имеет пул строк, в котором Java управляет распределением памяти для объектов String. См. String Pools в Java

Когда вы проверяете (сравниваете) два объекта с помощью оператора ==, он сравнивает равенство адресов в пуле строк. Если два объекта String имеют одинаковые адреса, то он возвращает true, в противном случае false. Но если вы хотите сравнить содержимое двух объектов String, вы должны переопределить метод equals.

equals - фактически метод класса Object, но он переопределяется в класс String и дается новое определение, которое сравнивает содержимое объекта.

Example:
    stringObjectOne.equals(stringObjectTwo);

Но помните, что это относится к случаю String. Если вы хотите сравнить регистр без учета регистра, вы должны пойти для метода equalsIgnoreCase класса String.

Давайте посмотрим:

String one   = "HELLO"; 
String two   = "HELLO"; 
String three = new String("HELLO"); 
String four  = "hello"; 

one == two;   // TRUE
one == three; // FALSE
one == four;  // FALSE

one.equals(two);            // TRUE
one.equals(three);          // TRUE
one.equals(four);           // FALSE
one.equalsIgnoreCase(four); // TRUE

231
задан Lii 19 December 2017 в 14:50
поделиться

4 ответа

Попробуйте установить C_INCLUDE_PATH (для файлов заголовков C) или CPLUS_INCLUDE_PATH (для файлов заголовков C ++).

Как отметил Сиро, CPATH установит путь как для C, так и для C ++.

Подробнее здесь .

315
ответ дан Mark Lakata 15 August 2018 в 22:38
поделиться

Создайте псевдоним для gcc с вашим любимым включением.

alias mygcc='gcc -I /whatever/'
42
ответ дан bstpierre 15 August 2018 в 22:38
поделиться
  • 1
    Я думаю, что после -I не должно быть места, – Iulius Curt 3 July 2012 в 10:58
  • 2
    Пробел после -I разрешен и работает нормально. – bstpierre 26 February 2013 в 15:18
  • 3
    просто вопрос о том, чтобы опустить пространство, точно так же, как вы набрали -l<libnam> для ссылки. Обратите внимание, что создание псевдонима - очень плохое решение, на самом деле вы бы создали список своих «любимых включений» и добавили их в свой Makefile. – h4unt3r 17 May 2013 в 18:56
  • 4
    "Второй вариант с библиотекой в ​​качестве отдельного аргумента предназначен только для соответствия POSIX и не рекомендуется. & quot; , в соответствии с руководством GCC. – Jori 15 April 2014 в 10:34

Спецификация gcc spec может выполнять задание, однако все пользователи на машине будут затронуты.

См. здесь

7
ответ дан dimba 15 August 2018 в 22:38
поделиться

Вот ссылка на руководство GCC 4.8.1, где документированы переменные среды C_INCLUDE_PATH и CPLUS_INCLUDE_PATH .

35
ответ дан Pablo Maurin 15 August 2018 в 22:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: