В настоящее время я пытаюсь написать простой класс-оболочку C # для всех хранимых процедур в базе данных.
При построении некоторых параметров на C # я заметил свойство SqlParameter.IsNullable и задумался, для чего это нужно. Насколько мне известно, Мне нужна процедура, которая выберет в этой таблице адреса, которые находятся в пределах указанного расстояния в милях от переданных значений широты / долготы ....
Итак, у меня есть таблица с кучей разных адресов в ней. Мне нужен процесс, который выберет адреса в этой таблице, которые находятся в пределах указанного расстояния в милях от переданных значений широты / долготы.
Итак, пример моей таблицы:
- messageId
- lat (float)
- long (float)
Процесс проходит в другой паре широта / долгота (как float
), так и int
(миль)
Я нашел это http://www.sqlteam.com/forums/topic. asp? TOPIC_ID = 81360 , чтобы вычислить фактическую формулу, но я не могу понять, как изменить ее в форме процедуры, чтобы иметь возможность просмотреть весь список адресов и дать мне только Id
' s адресов, которые
Вот программа, которая компилируется без предупреждения, например, на GNU C ++:
$ g++ -o t -Wall -pedantic -Wshadow t.cpp
$ ./t.exe
Calling barney::barney()
Calling foo::operator()()
Calling barney::barney()
Но она полностью не компилируется на MSVC ++:
$ cl /EHsc t.cpp
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 15.00.30729.01 for 80x86
Copyright (C) Microsoft Corporation. All rights reserved.
t.cpp
t.cpp(17) : error C2380: type(s) preceding 'fred' (constructor with return type, or illegal redefinition of current class-name?)
t.cpp(17) : error C2208: 'fred' : no members defined using this type
Более того, когда она компилируется, результат не такой, как я ожидал. Может ли кто-нибудь пролить свет на то, каким должно быть стандартное поведение этого кода ?
Вот оно:
#include
using ::std::cerr;
struct fred;
struct foo {
inline fred operator ()();
};
struct barney {
barney() : v_(0) { cerr << "Calling barney::barney()\n"; }
int v_;
};
struct fred : public barney {
foo fred;
int joe;
struct fred memfunc() { return fred(); }
};
inline fred foo::operator ()()
{
cerr << "Calling foo::operator()()\n"; return fred();
}
int main(int argc, const char *argv[])
{
fred f;
f.memfunc();
return 0;
}
Он выводит следующее:
Calling barney::barney()
Calling foo::operator()()
Calling barney::barney()
Но я ожидал этого:
Calling barney::barney()
Calling barney::barney()
Почему я получаю вывод я делаю? Это стандартное поведение? Если да, то почему, какие разделы стандарта имеют отношение к делу?
В дополнение к принятому ответу, Дэвид Родригес дал отличный ответ , детализируя, где в стандарте говорится, что я разрешено объявить член с именем fred
из struct fred
.
{if (icon instanceof ImageIcon) {return ((...
Я пытаюсь преобразовать значок ( javax.swing.Icon
) в изображение ( java.awt.Image
) с помощью этого кода:
private Image iconToImage(Icon icon)
{
if(icon instanceof ImageIcon)
{
return ((ImageIcon) icon).getImage();
}
else
{
BufferedImage image = new BufferedImage(icon.getIconWidth(), icon.getIconHeight(), BufferedImage.TYPE_INT_RGB);
icon.paintIcon(null, image.getGraphics(), 0, 0);
return image;
}
}
Дело в том, что функция paintIcon
выдает исключение NullPointerException
в image.getGraphics ()
.
. Для записи значение значка
является значком по умолчанию CheckBox
(получено через UIManager.getIcon ("CheckBox.icon")
)
Вот сведения о созданном исключении:
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at com.sun.java.swing.plaf.windows.WindowsIconFactory$CheckBoxIcon.paintIcon(WindowsIconFactory.java:306)
at utils.WarningRenderer.iconToImage(WarningRenderer.java:50)
at utils.WarningRenderer.(WarningRenderer.java:38)
at deliveryexpress.DeliveryExpressView.setWarnings(DeliveryExpressView.java:278)
at deliveryexpress.DeliveryExpressView.updateLists(DeliveryExpressView.java:218)
at deliveryexpress.DeliveryExpressView.access$1100(DeliveryExpressView.java:47)
at deliveryexpress.DeliveryExpressView$5.addCheck(DeliveryExpressView.java:183)
at org.japura.gui.model.DefaultListCheckModel.fireCheckListModelListeners(Unknown Source)
at org.japura.gui.model.DefaultListCheckModel.fireAddCheckListModelListeners(Unknown Source)
at org.japura.gui.model.DefaultListCheckModel.addCheck(Unknown Source)
at org.japura.gui.CheckList$1.mouseClicked(Unknown Source)
at java.awt.AWTEventMulticaster.mouseClicked(AWTEventMulticaster.java:253)
at java.awt.Component.processMouseEvent(Component.java:6292)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
at java.awt.Component.processEvent(Component.java:6054)
at java.awt.Container.processEvent(Container.java:2041)
at java.awt.Component.dispatchEventImpl(Component.java:4652)
at java.awt.Container.dispatchEventImpl(Container.java:2099)
at java.awt.Component.dispatchEvent(Component.java:4482)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4247)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
at java.awt.Container.dispatchEventImpl(Container.java:2085)
at java.awt.Window.dispatchEventImpl(Window.java:2478)
at java.awt.Component.dispatchEvent(Component.java:4482)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:644)
at java.awt.EventQueue.access$000(EventQueue.java:85)
at java.awt.EventQueue$1.run(EventQueue.java:603)
at java.awt.EventQueue$1.run(EventQueue.java:601)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
at java.awt.EventQueue$2.run(EventQueue.java:617)
at java.awt.EventQueue$2.run(EventQueue.java:615)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:614)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
Если вам нужны дополнительные сведения, просто скажите мне, я отредактирую свое сообщение, чтобы добавить их.
Спасибо!