Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/30: Рейтинг темы: голосов - 30, средняя оценка - 4.63
556 / 510 / 25
Регистрация: 23.07.2009
Сообщений: 2,359
Записей в блоге: 1

Отсутствие #ifdef, #define и подобного. Есть ли альтернатива?

27.08.2009, 12:38. Показов 6347. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
теперь уперся в отсутствие в C# #ifdef, #define и подобных штучек. что есть аналогичное? можно ли те же задачи решить с помощью аттрибутов? мне нужно теперь, чтоб некоторые строчки кода компилировались по-разному, в зависимости от чего-нибудь, чем я могу управлть во время компиляции.

Добавлено через 5 минут
Цитата Сообщение от IT-Skyline Посмотреть сообщение
В открытой вкладке должен появиться твоя длл или ...
IT-Skyline, этот путь к сожалению придется забыть. я имею ввиду вообще использование того же кода 1:1. есть нюансы, которые не позволяют этого сделать.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
27.08.2009, 12:38
Ответы с готовыми решениями:

STRINGTABLE and #define,#ifdef
Всем Здравия! В Visual Studio строки стоит хранить в ресурсах, а точнее в String Table. У меня есть класс, который придется...

Define ругается на отсутствие выражения перед "="
Доброго времени суток. Собственно, суть проблемы написана в заголовке темы. Сразу предупреждаю, Си знаю довольно таки плохо, поэтому...

GETS: есть ли альтернатива?
Ходят слухи, что функция get опасна (кому интересно, эта тема есть на форуме, чуть раньше). Есть ли какая-то функция, которая так же...

7
 Аватар для exe-dealer
308 / 161 / 11
Регистрация: 07.06.2009
Сообщений: 538
27.08.2009, 12:46
#define ПЫЩЬПЫЩЬ

.....

#if ПЫЩЬПЫЩЬ

#else

#endif
1
556 / 510 / 25
Регистрация: 23.07.2009
Сообщений: 2,359
Записей в блоге: 1
27.08.2009, 13:33  [ТС]
спасибо кто перетащил это в отдельную тему!

Добавлено через 47 минут

exe-dealer, а где нужно разместить #define ПЫЩЬПЫЩЬ, чтобы его было видно во всех файлах? попробовал в Program.cs - не помогает.
0
13 / 13 / 1
Регистрация: 12.08.2009
Сообщений: 11
27.08.2009, 14:41
сьотри здесь: http://msdn.microsoft.com/ru-r... yd1ha.aspx
0
556 / 510 / 25
Регистрация: 23.07.2009
Сообщений: 2,359
Записей в блоге: 1
27.08.2009, 15:17  [ТС]
вопрос хочу шырше поставить. опишу подробно, может я вовсе не в том углу ищу.

приложение создается для smart device. и дывайс имеется, и эмулятор к нему. но:
- дывайс всего один на всех (двоих)
- отлаживать на эмуляторе (да и на дывайсе!) - очень большой геморрой.

посему появилась идея создать параллельно нормальное windows form приложение, которое максимально возможно разделяло исходный код с разрабатываемым "настоящим". главная загвоздка - классы форм и прочих gui компонентов: я вынужден в дывайсвовом приложении использовать классы из пакета OpenNETCF, которые в тестовом приложении использовать не могу (да и не хочу).

приходит в голову только везде повставлять

C#
1
2
3
4
5
6
7
#if (TESTPROJECT)
   OpenNETCF.Windows.Forms.Button2 btn =  new OpenNETCF.Windows.Forms.Button2 ();
...
#else
   System.Windows.Forms.Button2 btn =  new System.Windows.Forms.Button ();
...
#endif
мне это не нравится, но другого выхода не вижу. подскажите еще варианты. желательно чтобы еще и дизайнер в обоих проектах работал.
0
1923 / 428 / 41
Регистрация: 12.07.2007
Сообщений: 2,062
27.08.2009, 16:10
C#
1
2
3
4
5
6
7
8
#if (TESTPROJECT)
   Using MyLib = OpenNETCF.Windows.Forms;
#else
   Using MyLib = System.Windows.Forms;
#endif
 
//...
btn =  new MyLib.Button();
1
556 / 510 / 25
Регистрация: 23.07.2009
Сообщений: 2,359
Записей в блоге: 1
27.08.2009, 17:01  [ТС]
Green, казалось бы красиво, но в этом пакете есть не Button, a Button2, не ListBox, a ListBox2 и т.д.

у меня уже была идея свою библиотеку создать, где произвести мои классы или от одного, или от другого, ничего не меняя. сейчас прпробую получится ли. тогда исходники форм будут вообще 1:1. но спасибо в любом случае за совет.
0
0 / 0 / 0
Регистрация: 22.10.2011
Сообщений: 6
13.12.2012, 17:41
Цитата Сообщение от novi4ok Посмотреть сообщение
а где нужно разместить #define ПЫЩЬПЫЩЬ, чтобы его было видно во всех файлах? попробовал в Program.cs - не помогает.
можно определить символ с помощью параметра компилятора в свойствах проекта
Build\Conditional compilation symbols: /define DEBUG

C#
1
2
3
#if (DEBUG)
            MessageBox.Show("Debug");
#endif
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
13.12.2012, 17:41
Помогаю со студенческими работами здесь

Есть ли замена функциям как, например, define?
Недавно из прочитанной статьи о директивах препроцессора define узнал, что ее (define) можно применять и в качестве функции: #define...

Есть ли альтернатива WebBrowser
Здравствуйте! Помогите написать простенькую программку. Много чего почитал, кое чего понял, но беда с браузерами. В общем суть...

Альтернатива Nadavi.ru есть?
Они платят за клики по банеру с разделами: Сотовые телефоны GPS навигаторы и т.д. Если пользователь кликнул на ссылку в банере,...

Есть ли альтернатива Compiz?
Доброго дня всем! собственно вопрос: установлен Debian 7.1 x64 (Xfce) , есть ли какая замена Compizu? в виду "смерти" последнего,...

Есть ли альтернатива bmp?
Господа есть ли возможность использовать CMP компоненты для oc4j или orion, при условии что все обращения к СУБД возможны только через...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а привычная функция main(). . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru